﻿using System;
using System.Collections.Generic;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
using System.ComponentModel;

namespace MSAP.Framework.Interfaces
{
    /// <summary>
    /// Un service page correspond a une page de travail.
    /// Elle peut contenir des services actions qui sont exposé par le service page
    /// </summary>
    public interface IServicePage : INotifyPropertyChanged
    {
        void Init(IModule module);
        IModule Module { get; }
        IShell Shell { get; }
        string ID { get; }
        string Title { get; }
        Uri ServiceUri { get; }
        string Comments { get; }
        ImageSource Icon { get; }
        List<IServiceAction> ServiceActions { get; }
        //$$$ Refactoring
        TabItem View { get; set; }
        ICommand CloseViewCommand { get; }
        //$$$
    }
}
